.\"	$OpenBSD: pcmcia.4,v 1.60 2015/03/05 21:33:47 aoyama Exp $
.\"	$NetBSD: pcmcia.4,v 1.4 1998/06/07 09:10:30 enami Exp $
.\"
.\" Copyright (c) 1997 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd $Mdocdate: March 5 2015 $
.Dt PCMCIA 4
.Os
.Sh NAME
.Nm pcmcia
.Nd introduction to PCMCIA (PC Card) support
.Sh SYNOPSIS
.Cd "# i386"
.Cd "pcic0   at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000"
.Cd "pcic1   at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000"
.Cd "pcic2   at isa? port 0x3e4 iomem 0xe0000 iosiz 0x4000"
.Cd "pcic*   at isapnp?"
.Cd "pcic*   at pci? dev?"
.Cd "pcmcia* at pcic?"
.Pp
.Cd "# i386"
.Cd "tcic0   at isa? port 0x240 iomem 0xd0000 iosiz 0x10000"
.Cd "pcmcia* at tcic?"
.Pp
.Cd "# luna88k"
.Cd "pcic*   at cbus?"
.Cd "pcmcia* at pcic?"
.Pp
.Cd "# sparc"
.Cd "tslot*  at sbus?"
.Cd "pcmcia* at tslot?"
.Pp
.Cd "# sparc/sparc64"
.Cd "stp*    at sbus?"
.Cd "pcmcia* at stp?"
.Pp
.Cd "# zaurus"
.Cd "pxapcic0 at pxaip?"
.Cd "pcmcia*  at pxapcic?"
.Pp
.Cd "# all architectures"
.Cd "cbb*      at pci?"
.Cd "cardslot* at cbb? flags 0x0000"
.Cd "pcmcia*   at cardslot?"
.Sh DESCRIPTION
The
.Nm
subsystem provides machine-independent bus support and
drivers for PCMCIA (PC Card)
devices.
.Pp
.Ox
provides support for the following devices.
Note that not all architectures support all devices.
.Ss Miscellaneous
.Bl -tag -width 12n -offset ind -compact
.It Xr gpr 4
GemPlus GPR400 smartcard reader
.El
.Ss Serial interfaces and modems
.Bl -tag -width 12n -offset ind -compact
.It Xr com 4
serial communications interface
.El
.Ss Wired network interfaces
.Bl -tag -width 12n -offset ind -compact
.It Xr ep 4
3Com EtherLink III and Fast EtherLink III 10/100 Ethernet device
.It Xr ne 4
NE2000 and compatible 10/100 Ethernet device
.It Xr sm 4
SMC91C9x and SMC91C1xx-based 10/100 Ethernet device
.It Xr xe 4
Xircom-based 16-bit PCMCIA 10/100 Ethernet device
.El
.Ss Wireless network interfaces
.Bl -tag -width 12n -offset ind -compact
.It Xr an 4
Aironet Communications 4500/4800 IEEE 802.11FH/b wireless network device
.It Xr cnw 4
Xircom CreditCard Netwave wireless network device
.It Xr malo 4
Marvell Libertas IEEE 802.11b/g wireless network device
.It Xr wi 4
WaveLAN/IEEE, PRISM 2-3, and Spectrum24 IEEE 802.11b wireless network device
.El
.Ss SCSI controllers
.Bl -tag -width 12n -offset ind -compact
.It Xr aic 4
Adaptec AIC-6260 and AIC-6360 SCSI interface
.El
.Ss IDE controllers
.Bl -tag -width 12n -offset ind -compact
.It Xr wdc 4
WD100x compatible hard disk controller driver
.El
.Pp
The supported PCMCIA controllers are those that are i82365 compatible.
.Sh NOTES
On some
.Nm
adapters, for instance the
.Xr sbus 4 Ns -based
.Xr stp 4 ,
the
.Nm
bus will be mapped in big-endian format instead of the natural (and
preferred) little endian format.
Unfortunately such controllers lack the hardware facility to swap bytes,
and it is not efficient to convert all drivers to always know about this.
While 8 bit drivers can invisibly work on such a bus, 16 bit
drivers will need modification to handle this.
So far,
.Xr wi 4
is the only driver to require these modifications.
.Pp
If the
.Nm
adapter is not detected, or if
.Nm
events (such as card insertion) do not occur, there may be a
.Tn PCI
card BIOS mapped in the same memory space the
.Nm
driver is configured to use (this is often the case with Ethernet
card boot ROMs).
The output from
.Xr dmesg 8
should contain a line beginning with
.Dq bios0
that lists the memory address and size of mapped regions.
If there is a conflict, you can use
.Xr boot_config 8
to change the iomem parameter of the
.Em pcic
device to a non-overlapping address, such as 0xd8000 for
.Em pcic0 .
Some experimentation may be required to find a working value; in some
cases the size parameter of the
.Em pcic
device may need to be decreased to avoid a conflict.
.Sh SEE ALSO
.Xr cardbus 4 ,
.Xr intro 4 ,
.Xr isa 4
.Sh HISTORY
The
.Nm
driver
appeared in
.Ox 2.3 .
